#pragma once

#define TUNSAFE_PIPE_NAME "\\\\.\\pipe\\TunSafe\\ServiceControl"
#define TUNSAFE_SERVICE_PROTOCOL_VERSION 20181021001

enum {
  TS_SERVICE_REQ_LOGIN = 0,
  TS_SERVICE_REQ_START = 1,
  TS_SERVICE_REQ_STOP = 2,
  
  TS_SERVICE_REQ_GETSTATS = 4,
  TS_SERVICE_REQ_SET_INTERNET_BLOCKSTATE = 5,
  TS_SERVICE_REQ_RESETSTATS = 6,
  TS_SERVICE_REQ_SET_STARTUP_FLAGS = 7,

  TS_SERVICE_MSG_STATE = 8,
  TS_SERVICE_MSG_LOGLINE = 9,
  TS_SERVICE_MSG_ERROR_REPLY = 10,
  TS_SERVICE_MSG_STATS = 11,
  TS_SERVICE_MSG_CLEARLOG = 12,
  TS_SERVICE_MSG_STATUS_CODE = 14,

  TS_SERVICE_REQ_GET_GRAPH = 15,
  TS_SERVICE_MSG_GRAPH = 16,


  TS_SERVICE_REQ_TEXT_PROTOCOL = 17,
  TS_SERVICE_REQ_TEXT_PROTOCOL_REPLY = 18,

  TS_SERVICE_REQ_GETINTERFACES = 19,
  TS_SERVICE_REQ_GETINTERFACES_REPLY = 20,

  TS_SERVICE_REQ_SUBMIT_TOKEN = 21,
};

enum {
  kTsMaxDevnameSize = 40
};